package net.alhazmy13.mediapickerexample;
import android.app.Fragment;
import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;
import android.util.Log;
import android.view.LayoutInflater;
import android.view.View;
import android.view.ViewGroup;
import android.widget.MediaController;
import android.widget.TextView;
import android.widget.VideoView;
import net.alhazmy13.mediapicker.Video.VideoPicker;
import net.alhazmy13.mediapicker.rxjava.video.VideoPickerHelper;
import java.util.List;
import rx.Subscriber;
import static android.app.Activity.RESULT_OK;
/**
* Created by alhazmy13 on 3/13/17.
*/
public class VideoFragment extends Fragment {
private VideoView videoView;
private TextView path;
private static final String TAG = "MainActivity";
private List<String> mPath;
@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container,
Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.video_layout, container, false);
init(view);
return view;
}
private void init(View view) {
// Find our View instances
videoView = (VideoView) view.findViewById(R.id.iv_video);
MediaController mediaController = new MediaController(getActivity());
mediaController.setAnchorView(videoView);
videoView.setMediaController(mediaController);
videoView.start();
path = (TextView) view.findViewById(R.id.tv_path);
view.findViewById(R.id.bt_pick).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
pickVideo();
}
});
}
private void pickVideo() {
new VideoPicker.Builder(getActivity())
.mode(VideoPicker.Mode.CAMERA_AND_GALLERY)
.directory(VideoPicker.Directory.DEFAULT)
.extension(VideoPicker.Extension.MP4)
.enableDebuggingMode(true)
.build();
}
//
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
if (requestCode == VideoPicker.VIDEO_PICKER_REQUEST_CODE && resultCode == RESULT_OK) {
mPath = (List<String>) data.getSerializableExtra(VideoPicker.EXTRA_VIDEO_PATH);
loadVideo();
}
}
private void loadVideo() {
if (mPath != null && mPath.size() > 0) {
Log.d(TAG, "loadImage: " + mPath.size());
path.setText(mPath.get(0));
videoView.setVideoURI(Uri.parse(mPath.get(0)));
videoView.start();
}
}
}